const fs = require('fs')
const util = require('util')
// 在 Node 中提供了一个工具函数，专门用来把一些 callback 形式的 API 自动包装成 promise 的方法
const readFile = util.promisify(fs.readFile)

// async 函数返回的是一个 Promise 对象
// 你需要通过 then 的方式来接收 async 函数中的返回值
async function read () {
	// console.log(2)
	// async 函数中如果遇到 await 异步操作，则方法会等待，而我们的程序不会等待
	const dataA = await readFile('./log/a.log', 'utf8')
	const dataB = await readFile('./log/b.log', 'utf8')
	const dataC = await readFile('./log/c.log', 'utf8')
	// console.log(dataA, dataB, dataC)
	// console.log(3)
	return [dataA, dataB, dataC]
}

// console.log(1)
// read()
// console.log(4)
// await 是一种新的语法，只能在 async 函数中使用
// await 一般是在其后面跟一个 Promise 操作 API

async function fn () {
	const data = await read()
	console.log(data)
}

fn()

// console.log(logs)